﻿using System;
using System.Collections.Generic;
using System.Text;

namespace RaisingStudio.Data.Expressions
{
    [Serializable]
    public class FunctionExpression : OperationElement
    {
        private FunctionOperator functionOperator;
        public FunctionOperator FunctionOperator
        {
            get
            {
                return this.functionOperator;
            }
            set
            {
                this.functionOperator = value;
            }
        }

        private ColumnExpression columnExpression;
        public ColumnExpression ColumnExpression
        {
            get
            {
                return this.columnExpression;
            }
            set
            {
                this.columnExpression = value;
            }
        }


        #region Constructor
        public FunctionExpression()
        {
        }

        public FunctionExpression(FunctionOperator functionOperator, string columnName)
        {
            this.functionOperator = functionOperator;
            this.columnExpression = new ColumnExpression(columnName);
        }

        public FunctionExpression(FunctionOperator functionOperator, ColumnExpression columnExpression)
        {
            this.functionOperator = functionOperator;
            this.columnExpression = columnExpression;
        }
        #endregion
   }
}
